package indi.yuluo.vo;

import lombok.*;

import java.util.HashMap;
import java.util.Map;

/**
 * @author: yuluo
 * @FileName: Msg.java
 * @createTime: 2022/4/11 12:50
 * @Description: 通用的返回类，含有json信息以及对数据操作是否成功的状态给浏览器
 */

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Msg {

    // 状态码
    private int code;
    // 提示信息
    private String msg;

    // 用户要返回给浏览器的数据
    private Map<String, Object> extend = new HashMap<>();

    /**
     * 添加信息
     * @param key
     * @param value
     * @return
     */
    public Msg add(String key, Object value) {

        this.getExtend().put(key, value);

        return this;
    }

    /**
     * 处理失败
     * @return
     */
    public static Msg success() {
        Msg result = new Msg();
        result.setCode(100);
        result.setMsg("处理成功");

        return result;
    }

    /**
     * 处理成功
     * @return
     */
    public static Msg fail() {
        Msg result = new Msg();
        result.setCode(200);
        result.setMsg("处理失败");

        return result;
    }
}
